Hybris UX Api
TMF639 - patchLogicalResource
This operation allows to reserve or release from the inventory for below use cases:
- Postpaid MSISDN, eSIM(ICCID), Fixed(logicalResource)
- Prepaid MSISDN, eSIM(ICCID)
URL
http://[localhost]:[port]/ecom-ux/v1/{businessId}/logicalResource/{id}URL PARAMS
| name | type | description | required |
|---|---|---|---|
| businessId | String | 2 letter ISO 3166 country code (PA, CWC) identifying the business unit. | Y |
| id | string | Resource identification number for which needs to patch the data. | Y |
Headers
| name | type | description | required |
|---|---|---|---|
| client_id | string | The client-id identifying the channel. Minimum characters: 5 | Y |
| client_secret | string | Password associated with the client-id. Minimum characters: 5 | Y |
| X-Correlation-ID | string | Identifier that correlates HTTP request between a client and server. Any identification model (UUDI, checksum, etc.) can be used, as long as it is a unique value to differentiate a transaction. | N |
Data Model - Request
| field name | type | description | required (mandatory-Y, optional-N, Not applicable- N/A, conditionallyMandatory-C/M) |
|---|---|---|---|
| resourceStatus | String | Tracks the lifecycle status of the resource, such as planning, installing, operating, retiring and so on. Possible values for PA: available, reserved Possible values for CWC: reserved | Y (PA), Y(CWC for PREPAID, POSTPAID & logicalResource) |
| @type | String | type of the concrete resource. Possible value for PA: MSISDN, ESIM | Y(PA), Y(CWC for PREPAID ,POSTPAID and logicalResource) |
| relatedParty[].id | String | unique identifier of Customer | Y(PA), Y(CWC for PREPAID , POSTPAID MSISDN and FIXED(logicalResource)) |
| relatedParty[].name | String | name of Customer | Y(PA only for PREPAID usecase), N/A(CWC) |
| relatedParty[].role | String | Role played by the related party | C/M (PA only for POSTPAID ESIM usecase), N/A(CWC) |
| relatedParty[].'@referredType' | String | Defines the type of the 'relatedParty[].id' Eg: Customer, Employee | Y(PA), Y(CWC for PREPAID, POSTPAID MSISDN and FIXED (logicalResource)only) |
| resourceCharacteristic[].name | String | Name of the characteristic Possible values for PA: SERVICE | Y(PA), Y(CWC for PREPAID, POSTPAID and FIXED (logicalResource)) |
| resourceCharacteristic[].valueType | String | Data type of the value of the characteristic | Y(PA), Y(CWC for PREPAID, POSTPAID and FIXED (logicalResource)) |
| resourceCharacteristic[].value | String | Value of the characteristic Possible values for PA: POSTPAID, PREPAID | Y(PA), Y(CWC for PREPAID, POSTPAID and FIXED (logicalResource)) |
relatedParty subResource -Data Model
| field name | type | description | required (mandatory-Y, optional-N, Not applicable- N/A, conditionalMandatory- C/M) | examples |
|---|---|---|---|---|
| relatedParty[].'@referredType' == "Customer" | String | Customer Name | C/M (PA), Y(CWC for POSTPAID MSISDN and FIXED logicalResource) | PA(ESIM): { "id": "Lakshmi", "@referredType" : "Customer" } CWC(MSISDN and logicalResource): { "id": "38926687", "@referredType" : "Customer" } |
| relatedParty[].'@referredType' == "Employee" | String | Employee number | C/M (PA only for POSTPAID), N/A(CWC) | PA(MSISDN): { "id": "<**>", "@referredType" : "Employee" } PA(ESIM): { "id": "<**>", "role": "authorizer", "@referredType" : "Employee" } |
resourceCharacteristic subResource -Data Model
| field name | type | description | required (mandatory-Y, optional-N, Not applicable- N/A) | examples |
|---|---|---|---|---|
| resourceCharacteristic[].name == "SERVICE" | String | Type of the Service Possible Value for PA, CWC: POSTPAID,PREPAID,FIXED | Y(PA, CWC only for POSTPAID and FIXED) | PA, CWC (MSISDN & ESIM): { "name": "SERVICE", "valueType": "string", "value": "POSTPAID" FIXED: { "name": "SERVICE", "valueType": "string", "value": "FIXED" } |
| resourceCharacteristic[].name == "NumberArea" | String | Type of the NumberArea Example Value for PA: MOV | Y(PA only for POSTPAID and FIXED),N/A(CWC) | PA(MSISDN): { "name": "NumberArea", "valueType": "string", "value": "MOV" } |
| resourceCharacteristic[].name == "BillingAccount.id" | String | Customer billingAccount | Y(PA only for POSTPAID),N/A(CWC) | PA(MSISDN): { "name": "BillingAccount.id", "valueType": "string", "value": "358155960000" } |
| resourceCharacteristic[].name == "ServiceType" | String | Type of the ServiceType Possible Value for CWC: CE (Cellular) FD (FIXED) | Y(CWC only for POSTPAID MSISDN and FIXED logicalResource),N/A(PA) | CWC (MSISDN): { "name": "ServiceType", "valueType": "string", "value": "CE" } FIXED : { "name": "ServiceType", "valueType": "string", "value": "FD" } |
| resourceCharacteristic[].name == "ReserveUntil" | String | Type of the Service Possible Value for CWC: Provide future Date | Y(CWC only for POSTPAID MSISDN and FIXED logicalResource),N/A(PA) | CWC (MSISDN): { "name": "ReserveUntil", "valueType": "string", "value": "26-02-2026T14:40:43.000-05:00" } |
| resourceCharacteristic[].name == "CardStatusReason" | String | card status reason Possible Value for CWC: "R" | Y(CWC only for POSTPAID ESIM),N/A(PA) | CWC (ESIM): { "name": "CardStatusReason", "valueType": "string", "value": "R" } |
| resourceCharacteristic[].name == "NumberStatusReason" | String | number status reason Possible Value for CWC: "17" | Y(CWC only for POSTPAID MSISDN and FIXED logicalResource),N/A(PA) | CWC (MSISDN and logicalResource): { "name": "NumberStatusReason", "valueType": "string", "value": "17" } |
Data Model - Response
| field name | type | description | required (mandatory-Y, optional-N, Not applicable- N/A, conditionalMandatory- C/M) |
|---|---|---|---|
| id | String | Identifier of an instance of the resource. Required to be unique within the resource type. | Y(PA),Y(CWC) |
| href | String | Hyperlink reference | Y(PA only for POSTPAID),Y(CWC) |
| resourceStatus | String | Tracks the lifecycle status of the resource, such as planning, installing, operating, retiring and so on. Possible values for PA: available, reserved Possible values for CWC: reserved | Y(PA),Y(CWC) |
| @type | String | type of the concrete resource. Possible value for PA & CWC: MSISDN, ESIM, logicalResource | Y(PA only for POSTPAID),Y(CWC) |
| relatedParty[].id | String | unique identifier | Y(PA only for POSTPAID),Y(CWC for POSTPAID MSISDN and FIXED logicalResource) |
| relatedParty[].role | String | Role played by the related party | C/M (PA : ESIM only for POSTPAID),N/A(CWC) |
| relatedParty[].'@referredType' | String | The actual type of the target instance when needed for disambiguation. | Y (PA only for POSTPAID),Y(CWC for POSTPAID MSISDN) |
| resourceCharacteristic[].name | String | Name of the characteristic | Y(PA only for POSTPAID),Y(CWC) |
| resourceCharacteristic[].valueType | String | Data type of the value of the characteristic | Y(PA only for POSTPAID),Y(CWC) |
| resourceCharacteristic[].value | String | Value of the characteristic | Y(PA only for POSTPAID),Y(CWC) |
| resourceType | String | Type of the concrete resource. Possible value for PA: MSISDN, ESIM | Y(PA only for PREPAID),N/A(CWC) |
relatedParty subResource -Data Model
| field name | type | description | required (mandatory-Y, optional-N, Not applicable- N/A,conditionalMandatory- C/M) | examples |
|---|---|---|---|---|
| relatedParty[].'@referredType' == "Customer" | String | Customer Name | Y(PA only for POSTPAID),Y(CWC for POSTPAID MSISDN and FIXED logicalResource) | PA(ESIM): { "id": "Lakshmi", "@referredType" : "Customer" } CWC(MSISDN and FIXED logicalResource): { "id": "38926687", "@referredType" : "Customer" } |
| relatedParty[].'@referredType' == "Employee" | String | Employee number | C/M (PA only for POSTPAID),N/A (CWC) | PA(MSISDN): { "id": "<*>", "@referredType" : "Employee" } PA(ESIM): { "id": "<**>", "role": "authorizer", "@referredType" : "Employee" } |
resourceCharacteristic subResource -Data Model
| field name | type | description | required (mandatory-Y, optional-N, Not applicable- N/A) | examples |
|---|---|---|---|---|
| resourceCharacteristic[].name == "SERVICE" | String | Type of the Service Possible Value for PA, CWC: POSTPAID,PREPAID | Y (PA, CWC only for POSTPAID) | PA, CWC (MSISDN, ESIM): { "name": "SERVICE", "valueType": "string", "value": "POSTPAID" } CWC (FIXED): { "name": "SERVICE", "valueType": "string", "value": "FIXED" } |
| resourceCharacteristic[].name == "NumberArea" | String | Type of the NumberArea Example Value for PA: MOV | Y(PA),N/A(CWC) | PA(MSISDN): { "name": "NumberArea", "valueType": "string", "value": "MOV" } |
| resourceCharacteristic[].name == "BillingAccount.id" | String | Customer billingAccount | Y(PA),N/A(CWC) | PA(MSISDN): { "name": "BillingAccount.id", "valueType": "string", "value": "358155960000" } |
| resourceCharacteristic[].name == "ServiceType" | String | Type of the ServiceType Possible Value for CWC: CE (Cellular) | Y(CWC only for POSTPAID MSISDN),N/A(PA) | CWC (MSISDN): { "name": "ServiceType", "valueType": "string", "value": "CE" } |
| resourceCharacteristic[].name == "ReserveUntil" | String | Type of the Service Possible Value for CWC: Provide future Date | Y(CWC only for POSTPAID MSISDN and FIXED logicalResource),N/A(PA) | CWC (MSISDN): { "name": "ReserveUntil", "valueType": "string", "value": "26-02-2026T14:40:43.000-05:00" } |
| resourceCharacteristic[].name == "CardStatusReason" | String | card status reason Possible Value for CWC: "R" | Y(CWC only for POSTPAID ESIM),N/A(PA) | CWC (ESIM): { "name": "CardStatusReason", "valueType": "string", "value": "R" } |
| resourceCharacteristic[].name == "NumberStatusReason" | String | number status reason Possible Value for CWC: "17" | Y(CWC only for POSTPAID MSISDN and FIXED logicalResource),N/A(PA) | CWC (MSISDN): { "name": "NumberStatusReason", "valueType": "string", "value": "17" } |
Key considerations
Service number(MSISDN) usecase for PA
POSTPAID
- As this is implemented for mobile postpaid customers, if resourceCharacteristic[].name == "SERVICE" then value should be "POSTPAID".
- For MSISDN resourceCharacteristic[].name == "NumberArea" ,For FAST TRACK provisioning, the following value="MOV" is currently working in the Non-Prod environment. However, for the PROD instance, the channel must discuss and finalize the appropriate value with the business, which then need to be configured in the Liberate PROD instance.
- For MSISDN resourceCharacteristic[].name == "BillingAccount.id" then value should be customer billingAccount.
- To reserve/release a MSISDN, set the @type to MSISDN.
- To reserve a MSISDN, set the resourceStatus to "reserved".
- To release a MSISDN, set the resourceStatus to "available".
- If relatedParty[].'@referredType' == "Employee", the following relatedParty[].id value we need to pass employee code. However, for the PROD instance, the channel must discuss and finalize the appropriate values with the business, which then need to be configured in the Liberate PROD instance.
- For reserve/release MSISDN, refer to note section for API specification.PREPAID
- As this is implemented for mobile prepaid customers, if resourceCharacteristic[].name == "SERVICE" then value should be "PREPAID".
- To reserve/release a MSISDN, set the @type to MSISDN.
- To reserve a MSISDN, set the resourceStatus to "reserved".
- To release a MSISDN, set the resourceStatus to "available".
- If relatedParty[].'@referredType' == "Customer" then Customer Name should be passed in relatedParty[].name
- For reserve/release MSISDN, refer to note section for API specification.eSIM (ICCID) usecase for PA
POSTPAID
- As this is implemented for mobile postpaid customers, if resourceCharacteristic[].name == "SERVICE" then value should be "POSTPAID".
- To reserve/release a eSIM(ICCID), set the @type to ESIM.
- To reserve a eSIM(ICCID), set the resourceStatus to "reserved".
- To release a eSIM(ICCID), set the resourceStatus to "available".
- If relatedParty[].'@referredType' == "Employee" and relatedParty[].role == "authorizer" are given then employee number should be passed in relatedParty[].id
- If relatedParty[].'@referredType' == "Customer" then Customer billing account id should be passed in relatedParty[].id
- For reserve/release eSIM(ICCID), refer to note section for API specification.PREPAID
- As this is implemented for mobile prepaid customers, if resourceCharacteristic[].name == "SERVICE" then value should be "PREPAID".
- To reserve/release a eSIM, set the @type to eSIM.
- To reserve a eSIM, set the resourceStatus to "reserved".
- To release a eSIM, set the resourceStatus to "available".
- If relatedParty[].'@referredType' == "Customer" then Customer Name should be passed in relatedParty[].name
- For reserve/release eSIM, refer to note section for API specification.Service number(MSISDN) usecase for CWC
POSTPAID
- This is implemented for CWC markets CWC-Anguilla(AI), CWC-Antigua(AG), CWC-British Virgin Islands (BVI)(VG), CWC-Cayman(KY), CWC-Dominica(DM), CWC-Grenada(GD), CWC-Jamaica(JM), CWC-Montserrat(MS), CWC-St Kitts(KN), CWC-StVincent(VC), CWC-Turks&Caicos(TKI)(TC) for postpaid/Fixed customers.
- If resourceCharacteristic[].name = "SERVICE", (If it is Mobile set to "POSTPAID" or If it is BLUU set to "Fixed".
- If resourceCharacteristic[].name = "NumberStatusReason" for MSISDN reservation, set its value to "17" (TBD - Pending confirmation from Liberate).
- If resourceCharacteristic[].name = "ServiceType", set its value to "CE" or "FD". (If it is Mobile Postpaid , serviceType should be set as "CE" or If is Fixed Bluu serviceType should be set as "FD")
- If resourceCharacteristic[].name = "ReserveUntil", set the value to a future date/time when MSISDN should remain reserved.
- To reserve MSISDN, set @type = "MSISDN" and resourceStatus = "reserved".
- If relatedParty[].@referredType = "customer", set relatedParty[].id = customerNumber.
- For PROD environment, final values must be confirmed with business and configured in Liberate PROD.
- For reserve MSISDN, refer to note section for API specification.Value reference table - Response
| Market | NumberStatusReason |
|---|---|
| JM | "17" |
| KY | "3" |
| AI | "3" |
| DM | "2" |
| KN | "1" |
| GD | "10" |
| LC | "1" |
| MS | "1" |
| TC | "10" |
| VC | "10" |
| VG | "5" |
eSIM (ICCID) usecase for CWC
POSTPAID
- This is implemented for CWC markets CWC-Anguilla(AI), CWC-Antigua(AG), CWC-British Virgin Islands (BVI)(VG), CWC-Cayman(KY), CWC-Dominica(DM), CWC-Grenada(GD), CWC-Jamaica(JM), CWC-Montserrat(MS), CWC-St Kitts(KN), CWC-StVincent(VC), CWC-Turks&Caicos(TKI)(TC) for postpaid/Fixed customers.
- If resourceCharacteristic[].name = "SERVICE", then set its value to "POSTPAID" because this setup is for postpaid mobile customers.
- To reserve an eSIM (ICCID), set @type = "ESIM" and resourceStatus = "reserved".
- If resourceCharacteristic[].name = "CardStatusReason" for ICCID, then its value must be "R".
- For PROD, the channel must confirm and finalize these values with the business team before configuring them in Liberate PROD.
- For reserve eSIM(ICCID), refer to note section for API specification.Note : For request and response examples please refer to this URL Patch LogicalResource Specification